A Rigorous Extension of the Schönhage-Strassen Integer Multiplication Algorithm Using Complex Interval Arithmetic
نویسندگان
چکیده
Multiplication of n-digit integers by long multiplication requires O(n2) operations and can be timeconsuming. In 1970 A. Schönhage and V. Strassen published an algorithm capable of performing the task with only O(n log(n)) arithmetic operations over C; naturally, finite-precision approximations to C are used and rounding errors need to be accounted for. Overall, using variable-precision fixedpoint numbers, this results in an O(n(log(n))2+ε)-time algorithm. However, to make this algorithm more efficient and practical we need to make use of hardware-based floating-point numbers. How do we deal with rounding errors? and how do we determine the limits of the fixed-precision hardware? Our solution is to use interval arithmetic to guarantee the correctness of results and determine the hardware’s limits. We examine the feasibility of this approach and are able to report that 75,000-digit base-256 integers can be handled using double-precision containment sets. This clearly demonstrates that our approach has practical potential; however, at this stage, our implementation does not yet compete with commercial ones, but we are able to demonstrate the feasibility of this technique.
منابع مشابه
Faster Polynomial Multiplication via Discrete Fourier Transforms
We study the complexity of polynomial multiplication over arbitrary fields. We present a unified approach that generalizes all known asymptotically fastest algorithms for this problem. In particular, the well-known algorithm for multiplication of polynomials over fields supporting DFTs of large smooth orders, Schönhage-Strassen’s algorithm over arbitrary fields of characteristic different from ...
متن کاملFast arithmetic for faster integer multiplication
For almost 35 years, Schönhage-Strassen’s algorithm has been the fastest algorithm known for multiplying integers, with a time complexity O(n · log n · log log n) for multiplying n-bit inputs. In 2007, Fürer proved that there exists K > 1 and an algorithm performing this operation in O(n · log n · Klog∗ ). Recent work showed that this complexity estimate can be made more precise with K = 8, and...
متن کاملFast Multiplication of Polynomials over Arbitrary Rings*
An algorithm is presented that allows to multiply two univariate polynomials of degree no more than n with coefficients from an arbitrary (possibly non-commutative) ring in O(n log(n) log(log n)) additions and subtractions and O(n log(n)) multiplications. The arithmetic depth of the algorithm is O(log(n)). This algorithm is a modification of the Schönhage-Strassen procedure to arbitrary radix f...
متن کاملReview Of Fast Multiplication Algorithms For Embedded Systems Design
This paper presents a review with numerical example and complexity analysis of the fast multiplication algorithms to help embedded system designers to improve the hardware performance for many applications such as cryptosystems design. The paper presented two practical multiplication algorithms: Karatsuba multiplication algorithm with time complexity O(n ) and Schönhage–Strassen multiplication ...
متن کاملA cache-friendly truncated FFT
We describe a cache-friendly version of van der Hoeven’s truncated FFT and inverse truncated FFT, focusing on the case of ‘large’ coefficients, such as those arising in the Schönhage–Strassen algorithm for multiplication in Z[x]. We describe two implementations and examine their performance.
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- Reliable Computing
دوره 18 شماره
صفحات -
تاریخ انتشار 2013